Release 26.8.23.1 - first H-3 firmware release - #11
Merged
Merged
Conversation
Joins the previously unrelated beta and main histories. The tree of this commit is identical to main (b825c46); beta's prior content was leftover AIR-1/PLT-1 template files. Future beta syncs are ordinary fast-forwards from here. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Sync beta to main
Every Build and Publish run on main fails at Set Version because release-drafter cannot find .github/release-drafter.yml. Copied from H-1 with the changelog link pointed at this repo. Generated with [Claude Code](https://claude.com/claude-code)
The smart firmware only offered the hotspot and captive portal for first-time Wi-Fi setup. With improv_serial the browser installer can prompt for Wi-Fi right after flashing, matching the H-1. Generated with [Claude Code](https://claude.com/claude-code)
Same runtime switch the rest of the fleet has (AIR-1, MSR-2): default off, esp32_ble_tracker start_scan/stop_scan, re-applied at on_boot -300 so scanning matches the state restored from flash. Smart firmware only; H-3D has no api so bluetooth_proxy cannot load there. Generated with [Claude Code](https://claude.com/claude-code)
Add the release-drafter config the build workflow needs
Auto-assign on fork PRs via pull_request_target
Add improv_serial so the web installer can set Wi-Fi
# Conflicts: # Integrations/ESPHome/Core.yaml
Add the Bluetooth Proxy switch
Ports the MSR-2 Stable/Beta channel logic: Firmware Channel select, apply_ota_source script, Firmware Update button, http_request buffers sized for GitHub release-asset redirects, and a beta-channel build that defaults the select to Beta. build-beta.yml publishes beta pushes to the rolling beta-fw pre-release. Generated with [Claude Code](https://claude.com/claude-code)
Long-form PR template in .github (the Types of changes boxes feed the shared label-check), standalone label-check.yml on pull_request_target so fork PRs get labelled, and ci.yml back to read-only with the inline label job removed, matching MSR-2. Generated with [Claude Code](https://claude.com/claude-code)
Same layout as H-2: charity section, shop link to the H-3 listing, photo placeholder until there is a product image. Generated with [Claude Code](https://claude.com/claude-code)
Generated with [Claude Code](https://claude.com/claude-code)
Bring the README in line with the H-2 one
Bring the PR template and label check in line with the fleet
Add the Firmware Channel select and beta builds
Generated with [Claude Code](https://claude.com/claude-code)
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Set version to 26.8.23.1 for the first release
Beta builds now compile H-3.yaml directly and the Firmware Channel select defaults to Stable on all builds. Mirrors CAST-1 #60 and AIR-1 #125. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Update Firmware Select
Member
|
@bharvey88 Failing GH action. Is it because something isn't merged yet? |
The publish job never found the firmware it had just downloaded:
find: 'fw/firmware-standard': No such file or directory
Error: manifest.json not found for firmware-standard
actions/download-artifact only creates a per-artifact subdirectory when
two or more artifacts match the pattern. With exactly one match it
extracts flat into `path`:
Total of 1 artifact(s) downloaded
Starting download of artifact to: /home/runner/work/H-3/H-3/fw
H-3 builds a single beta image, since H-3D has no wifi or OTA and is
USB-flash only, so the files landed in fw/ while the publish step looked
in fw/firmware-standard/. The rest of the fleet builds two beta images
and always gets the subdirectory, which is why the same script works
there. Downloading by name instead of pattern pins the layout regardless
of artifact count.
Also adds the beta-fw tag repoint step that MSR-1 and CAST-1 already
have. Without it the release tag tracks main HEAD rather than the beta
commit that produced the assets; the tag currently points at main.
The beta-fw release has no assets at all right now, so a device switched
to the Beta channel gets a 404 on the manifest until this lands.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
10 tasks
…t-path Fix beta asset publish and repoint the beta-fw tag
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Merges beta into main for the 26.8.23.1 release. Merge #10 first so the tag comes out as 26.8.23.1. Changes include:
improv_serialso the browser installer can set Wi-Fi; Add the Bluetooth Proxy switch #6 Bluetooth Proxy switch (fleet policy, default off); Add the Firmware Channel select and beta builds #7 Firmware Channel select (Stable/Beta) with the Firmware Update button, beta build viabuild-beta.yml(Update Firmware Select #12 removed the beta-channel folder; beta builds use H-3.yaml directly)Merge commit, not squash. Merging triggers Build and Publish on main, which creates release 26.8.23.1 and publishes
firmware/andfirmware-d/to Pages. Pages must be enabled (Settings -> Pages -> Source: GitHub Actions) before that run, or the deploy step fails.🤖 Generated with Claude Code